﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
using System.Data.OleDb;
using System.Text.RegularExpressions;

public partial class Thong_Tin_Tai_Khoan : System.Web.UI.Page
{
    DataProvider duLieu = new DataProvider();
    ListBox listBox = new ListBox();

    protected void Page_Init(object sender, System.EventArgs e)
    {
        int i = 0;
        string data = "";

        //==== Make Ngày ====

        for (i = 1; i <= 31; i++)
        {
            data = "";
            if (i < 10)
            {
                data = "0" + i;
            }
            else
            {
                data = i.ToString();
            }
            ngaysinh.Items.Add(data);
        }
        ngaysinh.SelectedIndex = 0;

        //==== Make Tháng ====

        for (i = 1; i <= 12; i++)
        {
            data = "";
            if (i < 10)
            {
                data = "0" + i;
            }
            else
            {
                data = i.ToString();
            }
            thangsinh.Items.Add(data);
        }
        thangsinh.SelectedIndex = 0;

        //==== Make Năm ====

        for (i = (DateTime.Now.Year - 100); i <= DateTime.Now.Year; i++)
        {
            data = "";
            if (i < 10)
            {
                data = "0" + i;
            }
            else
            {
                data = i.ToString();
            }
            namsinh.Items.Add(data);
        }
        namsinh.SelectedIndex = namsinh.Items.Count - 1;      
    }

    protected void Page_Load(object sender, System.EventArgs e)
    {
        if (!IsPostBack)
        {

            if (!string.IsNullOrEmpty((string)Session["Username"]) & (int)Session["Logged"] == 1)
            {
                //==== Thông Tin Khách Hàng ====
                userlogged.Text = "<b>" + (string)Session["Username"] + "</b>";
                DataTable bangthongtintaikhoan = null;
                listBox.Items.Clear();
                duLieu.MakeDuLieu(listBox, (string)Session["ID"]);

                bangthongtintaikhoan = duLieu.Load_Du_Lieu_New("select hotenkh,ngaysinh,gioitinh,diachikh,dienthoaikh,emailkh from khachhang where makh=?", listBox);

                string hotenkh1 = (string)bangthongtintaikhoan.Rows[0][0];
                string ngaysinh1 = ((DateTime)bangthongtintaikhoan.Rows[0][1]).ToString();
                string diachikh1 = (string)bangthongtintaikhoan.Rows[0][3];
                string dienthoaikh1 = (string)bangthongtintaikhoan.Rows[0][4];
                string emailkh1 = (string)bangthongtintaikhoan.Rows[0][5];

                //=== Check Giới Tính ====

                bool gioitinh1 = (bool)bangthongtintaikhoan.Rows[0][2];
                if (gioitinh1 == true)
                {
                    nam.Checked = true;
                    nu.Checked = false;
                }
                else
                {
                    nam.Checked = false;
                    nu.Checked = true;
                }

                //=== Gán Giá Trị ====

                hovaten.Text = hotenkh1;
                email.Text = emailkh1;
                diachi.Text = diachikh1;
                dienthoai.Text = dienthoaikh1.ToString();

                string[] mangdulieu = null;
                mangdulieu = ngaysinh1.Split('/');
                ngaysinh.SelectedValue = (mangdulieu[1].Length < 2 ? "0" + mangdulieu[1] : mangdulieu[1]);
                thangsinh.SelectedValue = (mangdulieu[0].Length < 2 ? "0" + mangdulieu[0] : mangdulieu[0]);
                namsinh.SelectedValue = mangdulieu[2];

                thongtintaikhoan.Visible = true;
            }
            else
            {
                showthongbao.Text = "<a href='Default.aspx'>BẠN HÃY ĐĂNG NHẬP ĐỂ SỬ DỤNG ĐƯỢC CHỨC NĂNG NÀY.</a>";
                return;
            }
        }
    }


    protected void luuthongtin_Click(object sender, System.EventArgs e)
    {
        string hovaten1 = hovaten.Text;
        string ngaythangnamsinh1 = thangsinh.Text + "/" + ngaysinh.Text + "/" + namsinh.Text;
        string diachi1 = diachi.Text;

        //==== Kiểm Tra Giới Tính =====

        int gioitinh1 = 0;
        if (nam.Checked == true)
        {
            gioitinh1 = 1;
        }
        else if (nu.Checked == true)
        {
            gioitinh1 = 0;
        }
        else
        {
            gioitinh1 = 1;
        }

        //==== Kiểm Tra Email =====

        string email1 = email.Text;
        Regex checkemail = new Regex("\\w+([-+.']\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*");
        if (checkemail.IsMatch(email1) == false)
        {
            showthongbao.Text = "<font color='red'>Bạn nhập sai chuẩn email rồi.</font><br/><hr color='#008000' size='1'><br/>";
            email.ForeColor = System.Drawing.Color.Red;
            return;
        }
        else
        {
            email.ForeColor = System.Drawing.Color.Black;
        }

        //==== Kiểm Tra Điện Thoại =====

        string dienthoai1 = dienthoai.Text;
        if (!duLieu.kiemTraDienThoai(dienthoai1))
        {
            showthongbao.Text = "<font color='red'>Bạn nhập sai chuẩn số ĐIỆN THOẠI rồi.</font><br/><hr color='#008000' size='1'><br/>";
            dienthoai.ForeColor = System.Drawing.Color.Red;
            return;
        }
        else
        {
            dienthoai.ForeColor = System.Drawing.Color.Black;
        }

        //==== Kiểm Tra Dữ Liệu =====


        if (!string.IsNullOrEmpty(hovaten1) & !string.IsNullOrEmpty(ngaythangnamsinh1) & !string.IsNullOrEmpty(email1) & !string.IsNullOrEmpty(diachi1) & !string.IsNullOrEmpty(dienthoai1))
        {
            listBox.Items.Clear();
            duLieu.MakeDuLieu(listBox, hovaten1);
            duLieu.MakeDuLieu(listBox, ngaythangnamsinh1);
            duLieu.MakeDuLieu(listBox, email1);
            duLieu.MakeDuLieu(listBox, diachi1);
            duLieu.MakeDuLieu(listBox, dienthoai1);
            duLieu.MakeDuLieu(listBox, gioitinh1.ToString());
            duLieu.MakeDuLieu(listBox, (string)Session["ID"]);

            if (duLieu.Luu_Du_Lieu_New("update khachhang set hotenkh=?,ngaysinh=?,emailkh=?,diachikh=?,dienthoaikh=?,gioitinh=? where makh=?", listBox) != 0)
            {
                showthongbao.Text = "<font color='red'>Lưu Dữ Liệu Thành Công</font><br/><hr color='#008000' size='1'><br/><a href='Default.aspx'>Về Trang Chủ</a>";
                thongtintaikhoan.Visible = false;
            }
            else
            {
                showthongbao.Text = "<font color='red'>Lưu Dữ Liệu Không Thành Công</font><br/><hr color='#008000' size='1'><br/>";
            }
        }
        else
        {
            showthongbao.Text = "<font color='red'>Bạn chưa nhập đầy đủ dữ liệu</font><br/><hr color='#008000' size='1'><br/>";
        }
    }


    protected void luumatkhau_Click(object sender, System.EventArgs e)
    {
        string matkhaucu1 = matkhaucu.Text;
        string matkhaumoi1 = matkhaumoi.Text;

        if (!string.IsNullOrEmpty(matkhaucu1) & !string.IsNullOrEmpty(matkhaumoi1))
        {

            if (duLieu.Check_Login((string)Session["Username"], matkhaucu1) == true)
            {
                listBox.Items.Clear();
                duLieu.MakeDuLieu(listBox, matkhaumoi1);
                duLieu.MakeDuLieu(listBox, (string)Session["ID"]);

                if (duLieu.Luu_Du_Lieu_New("update khachhang set matkhaukh=? where makh=?", listBox) != 0)
                {
                    showthongbao.Text = "<font color='red'>Đổi Password Thành Công</font><br/><hr color='#008000' size='1'><br/><a href='Default.aspx'>Về Trang Chủ</a>";
                    thongtintaikhoan.Visible = false;
                }
                else
                {
                    showthongbao.Text = "<font color='red'>Đổi Password Không Thành Công.</font><br/><hr color='#008000' size='1'><br/>";
                }
            }
            else
            {
                matkhaucu.Text = "";
                matkhaumoi.Text = "";
                showthongbao.Text = "<font color='red'>Bạn Nhập Sai Password Củ Rồi.</font><br/><hr color='#008000' size='1'><br/>";
            }
        }
    }
}